package com.linkoog.devtools.archive.util;

import java.io.File;

public class FileNameUtil {


    public static String getFileNameWithoutExtension(File file) {
        if (file == null) return null;

        String fileName = file.getName();

        // 获取文件名中最后一个点号（.）的索引
        int lastDotIndex = fileName.lastIndexOf('.');

        // 如果存在点号且不在文件名的开头或结尾
        if (lastDotIndex > 0 && lastDotIndex < fileName.length() - 1) {
            // 使用substring获取不包含后缀的文件名部分
            return fileName.substring(0, lastDotIndex);
        } else {
            // 如果没有点号或者点号在文件名的开头或结尾，直接返回整个文件名
            return fileName;
        }
    }

    public static String getFileNameWithoutExtension(File file, String fileExtension) {
        if (file == null) return null;
        if (fileExtension == null || fileExtension.trim().isEmpty()){
            return getFileNameWithoutExtension(file);
        }

        if (! fileExtension.startsWith(".")){
            fileExtension = "." + fileExtension;
        }

        String fileName = file.getName();
        if (fileName.endsWith(fileExtension)){
            return fileName.substring(   0, fileName.length() - fileExtension.length());
        }
        return fileName;
    }

}
